package com.py.framework.service;

import java.util.List;

import com.py.framework.entity.WorkFlowBus;

/**
 * 工作流Service
 *
 * @author Leegern
 * @date 2018年5月22日
 */
public interface WorkFlowService {

    /**
     * 根据流程名称查询流程数据
     *
     * @param actName
     * @return
     */
    int getActsByName(String actName);

    /**
     * 根据流程id获取对象
     *
     * @param procId 流程Id
     * @return
     */
    WorkFlowBus findActByProcId(String procId);

    /**
     * 根据流程Id获取数据
     *
     * @param wfId 流程Id
     * @return
     */
    WorkFlowBus getActByWFId(long wfId);

    /**
     * 根据业务Id获取数据
     *
     * @param busId 业务Id
     * @return
     */
    List<WorkFlowBus> getActsByBusId(long busId);

    /**
     * 添加业务流程数据
     *
     * @param entity
     * @return
     */
    int addWorkFlowBus(WorkFlowBus entity);

    /**
     * 更新工作流状态
     *
     * @param workflow
     * @return
     */
    int updateWorkFlowBus(WorkFlowBus workflow);

    /**
     * 启动流程
     */
    void startWorkflow();

    List<WorkFlowBus> getHandledWorkFlowBus();

    void updateWorkFlowUpdateFlag(String id);

    int getDataOwnerByTaskId(String taskId);

    int getBusIdByTaskId(String taskId);

    /**
     * 功能描述: 查询企业异议处理历史记录
     *
     * @param tybm 企业统一编码
     * @return WorkFlowBus 工作流对象
     * @author YaoS
     * @date 19/1/23 14:29
     */
    WorkFlowBus getDissentProcessHistory(String tybm,String id);
}